Skip to content

build(deps): fix pip-audit --strict failures (click, cryptography, pip) — CI run #589 - #211

Draft
Sbussiso wants to merge 1 commit into
masterfrom
ci-fix/32779707858
Draft

build(deps): fix pip-audit --strict failures (click, cryptography, pip) — CI run #589#211
Sbussiso wants to merge 1 commit into
masterfrom
ci-fix/32779707858

Conversation

@Sbussiso

Copy link
Copy Markdown
Contributor

Root cause

CI run #589 (actions/runs/32779707858) failed the Backend tests / Dependency scan (pip-audit) step with 5 known vulnerabilities in 3 packages:

Package Version ID Fix
click 8.3.1 PYSEC-2026-2132 8.3.3
cryptography 48.0.1 PYSEC-2026-3552 50.0.0
cryptography 48.0.1 PYSEC-2026-3553 49.0.0
cryptography 48.0.1 PYSEC-2026-3554 49.0.0
pip 26.1.2 PYSEC-2026-3721 26.2

The run was triggered by the frontend happy-dom Dependabot PR (#205, now merged), but the failing job is an unrelated backend security scan. This is the repo's recurring "new advisory landed in the PyPA DB during a quiet week" pattern — pip-audit --strict flips red even though no app code changed.

⚠️ This same advisory set has re-failed CI across runs #580–#589, each spawning a duplicate ci-fix/* PR that was never merged to master. As a result master kept the old vulnerable floors (pip>=26.1.2, cryptography>=48.0.1, no click constraint) and every new run re-failed. This PR targets master directly to actually close the loop. (The webhook's nominal target branch dependabot/npm_and_yarn/frontend/happy-dom-20.11.6 was deleted on merge of #205.)

Fix

Bump the stale transitive constraint-dependencies floors and add the new click constraint, following the repo's documented convention (each entry has a "Remove once X's own pin clears Y" comment):

Package Old floor New floor
pip >=26.1.2 >=26.2
click — (new) >=8.3.3
cryptography >=48.0.1 >=50.0.0

The cryptography>=50.0.0 floor forces clerk-backend-api 6.0.1 → 7.0.0 because clerk 6.x caps cryptography <49.0.0 and the CVE fixes require >=49.0.0 (3553/3554) / >=50.0.0 (3552). clerk 7.0.0 widens the cap to <51.0.0,>=45.0.0, so the direct dep is bumped from >=5.0.6 to >=7.0.0.

Verification (local, sandbox)

  • uv lock — resolved cleanly: click 8.4.2, cryptography 50.0.0, pip 26.2.1, clerk-backend-api 7.0.0
  • uv run --extra dev pip-audit --strictNo known vulnerabilities found (exit 0)
  • uv run --extra dev pytest -q699 passed in 11.86s (clerk-backend-api 7.0.0 is API-compatible: backend only uses clerk's organizations.list / .get_billing_subscription / .update endpoints)

Related

Hermes coder CI triage — automated.

Run #32779432581 (Test & Deploy) failed on the "Dependency scan
(pip-audit)" step with 5 known vulnerabilities in 3 packages:

  click        8.3.1   PYSEC-2026-2132  -> fix 8.3.3
  cryptography 48.0.1  PYSEC-2026-3552  -> fix 50.0.0
  cryptography 48.0.1  PYSEC-2026-3553  -> fix 49.0.0
  cryptography 48.0.1  PYSEC-2026-3554  -> fix 49.0.0
  pip          26.1.2  PYSEC-2026-3721  -> fix 26.2

All three are transitive; none are imported directly by app code.

click (via uvicorn) and pip (pulled in only by pip-audit itself;
not shipped in the app image) clear with simple constraint bumps.

cryptography is the non-trivial one: clerk-backend-api 6.x caps
cryptography <49.0.0, so PYSEC-2026-3552/3553/3554 cannot be cleared
without bumping clerk-backend-api 6 -> 7 (which widens the cap to
<51.0.0). The five clerk methods this app calls --
authenticate_request, organizations.{update,list,
get_billing_subscription}, organization_memberships.list -- all
exist unchanged on 7.0.0. Validated locally by reproducing the exact
CI sequence (uv sync --extra dev -> ruff check -> uv run pip-audit
--strict -> pytest):

  - ruff: all checks passed
  - pip-audit --strict: No known vulnerabilities found
  - pytest: 699 passed
Sbussiso referenced this pull request Aug 24, 2026
Bumps [happy-dom](https://github.com/capricorn86/happy-dom) from 20.11.2 to 20.11.6.
- [Release notes](https://github.com/capricorn86/happy-dom/releases)
- [Commits](capricorn86/happy-dom@v20.11.2...v20.11.6)

---
updated-dependencies:
- dependency-name: happy-dom
  dependency-version: 20.11.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants